home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1995 October / EnigmA AMIGA RUN 01 (1995)(G.R. Edizioni)(IT)[!][issue 1995-10][Aminet 7].iso / Aminet / gfx / show / Easy_MPEG105.lha / Easy_MPEG / mpeg_encode.readme2 < prev    next >
Text File  |  1994-04-16  |  7KB  |  143 lines

  1.  
  2.                  MPEG-1 Video Software Encoder
  3.                 (Version 1.3; March 14, 1994)
  4.  
  5.      Lawrence A. Rowe, Kevin Gong, Ketan Patel, and Dan Wallach
  6.     Computer Science Division-EECS, Univ. of Calif. at Berkeley
  7.  
  8. This directory contains the freely distributed Berkeley MPEG-1 Video 
  9. Encoder.  The encoder implements the standard described in the ISO/IEC
  10. International Standard 11172-2.  The code has been compiled and tested 
  11. on the following platforms:
  12.  
  13.  DECstation 5000 and Alpha
  14.  HP PA-RISC (HP/UX 8.X) (i.e., HP 9000/7XX and 9000/3XX)
  15.  IBM RS/6000
  16.  Intel i486 running ISC InterActive 2.2.1 (SysV 3.2), Linux (SLS v1.01),
  17.     and XFree86-1.2 (X11R5)
  18.  SGI Indigo running IRIX 5.0.1
  19.  Sun Sparc (SunOS 4.X)
  20.  
  21. If you have trouble installing, binaries for DECstation 5000, Dec Alpha,
  22. HP 9000, and Sun Sparc are included in mpeg_encode-1.3.bin.tar.Z from
  23. the Berkeley FTP archive (mm-ftp.CS.Berkeley.EDU).
  24.  
  25. In addition, Rainer Menes from the Technical University of Munich has
  26. ported the encoder and decoder to the Macintosh.  You can get that code
  27. directly from him (menes@statistik.tu-muenchen.de), or from the 
  28. Berkeley FTP archive.  If you decide to port the code to a new
  29. architecture, please let us know so that we can incorporate the changes
  30. into our sources.
  31.  
  32. This directory contains everything required to build the encoder
  33. and run it.  We have included source code, makefiles, binaries
  34. for selected platforms, documentation, and test data.  Installation 
  35. instructions are given in the file named src/INSTALL.  A man 
  36. page is given in the file doc/mpeg_encode.1.  A detailed user manual
  37. is provided in postscript format in the file doc/user-manual.ps.
  38.  
  39. The encoder will accept any input file format as long as you provide 
  40. a script to convert the images to PPM or YUV format.  Input file
  41. processing is described in the file doc/INPUT.FORMAT.  Options to control 
  42. input file processing and compression parameters are specified in 
  43. a parameter file.  Very little error processing is done when reading 
  44. this file.  We suggest you start with the sample parameter file 
  45. examples/template.param and modify it.  See also examples/default.param.
  46.  
  47. The misc/ directory contains utilities you might find useful including:
  48. programs to do PPM/YUV conversion and programs to convert Parallax
  49. XVideo JPEG files into PPM or YUV frames.
  50.  
  51. The motion vector search window can be specified, including half-pixel
  52. block matching, in the parameter file.  We have implemented several 
  53. search algorithms for P-frames including: 1) exhaustive search, 
  54. 2) subsampled search, and 3) logarithmic search.  We have also implemented
  55. several alternatives for B-frame block matching including: 1) interpolate
  56. best forward and best backward block, 2) find backward block for best
  57. forward or vice-versa (called CROSS2), and 3) exhaustive cross product
  58. (i.e., go out for coffee and a donut!). The search algorithms are controlled
  59. by options in the parameters file.  For tips on choosing the right search
  60. technique, see the user manual.
  61.  
  62. The encoder can be run on one computer (i.e., sequential) or on several
  63. computers (i.e., parallel).  Our goal is to produce a portable, easy-to-use
  64. encoder that we can use to encode large volumes of video material for
  65. the Berkeley VOD system (see paper VodsProp93.ps.Z on the FTP archive).
  66. The parallelism is done on a sequence of pictures.  In other words, you 
  67. can spawn one or more children to encode continuous runs pictures. The 
  68. uncompressed data can be accessed either through NFS or TCP sockets.  
  69. The goal is to allow you to encode using multiple processors, think 
  70. spare cycles on workstations, to speed up the encoding time.  Although
  71. performance depends on the speed of individual processors, the file system
  72. and network, and the P/B frame search methods, we have encoded 3.75
  73. frames/second on 8 HP Snakes running in parallel as compared with 0.6
  74. frames/second on 1 Snake.  These are preliminary results. We are continuing 
  75. to experiment with and tune the code.  Instructions to run the parallel system 
  76. are given in the man page and the parallel.param example parameter file.
  77.  
  78. We have done some tuning to produce a reasonable encoder, but there are
  79. many more optimizations that we would like to incorporate.  These 
  80. extensions are listed in the file EXTENSIONS.  If you succeed in 
  81. implementing any of them, please let us know! In particular, we have not
  82. implemented rate control to limit the bitrate nor dynamically varying 
  83. compression parameters (e.g., frame sequence, Qscale, search technique, etc.).
  84.  
  85. We have established several mailing lists for messages about the Berkeley 
  86. MPEG work:
  87.  
  88. mpeg-list-dist@CS.Berkeley.EDU
  89.    General information on the MPEG-1 decoder and encoder for 
  90.    everyone interested should be sent to this list.
  91.  
  92. mpeg-list-request@CS.Berkeley.EDU
  93.    Requests to join or leave the list should be sent to this
  94.    address. The subject line should contain the single word
  95.    ADD or DELETE.
  96.  
  97. mpeg-bugs@CS.Berkeley.EDU
  98.    Problems, questions, or patches should be sent to this address.
  99.  
  100. Anyone interested in providing financial support for this research or 
  101. discussing other aspects of this project should contact Larry Rowe at 
  102. Rowe@CS.Berkeley.EDU (+1 510-642-5117).
  103.  
  104. This software is freely distributed.  That means, you may use it for 
  105. any non-commercial purpose.  However, patents are held by several companies 
  106. on various aspects of the MPEG video standard.  Companies or individuals
  107. who want to develop commercial products that include this code must
  108. acquire licenses from these companies.  For information on licensing, see
  109. Appendix F in the standard.
  110.  
  111. ACKNOWLEDGEMENTS:
  112.  
  113. We gratefully thank Hewlett-Packard and Fujitsu who provided financial
  114. support for this work.  We also want to thank the following people for 
  115. their help:
  116.  
  117.     Jef Poskanzer who developed the pbmplus package.
  118.     ---------
  119.     Copyright (C) 1989, 1991 by Jef Poskanzer.
  120.  
  121.     Permission to use, copy, modify, and distribute this software and its
  122.     documentation for any purpose and without fee is hereby granted, provided
  123.     that the above copyright notice appear in all copies and that both that
  124.     copyright notice and this permission notice appear in supporting
  125.     documentation.  This software is provided "as is" without express or
  126.     implied warranty.
  127.     ---------
  128.  
  129.     Eiichi Kowashi of Intel and Avideh Zakhor of U.C. Berkeley who
  130.     provided valuable suggestions on motion vector searching.
  131.  
  132.     Chad Fogg of the University of Washington who has helped us 
  133.     understand many issues in MPEG coding and decoding.
  134.  
  135.     Rainer Menes of the Technical University of Munich who has ported the
  136.     the Berkeley MPEG encoder and decoder to the Macintosh, and he has 
  137.     provided us with many suggestions to improve the code.
  138.  
  139.     Robert Safranek of ATT for comments, suggestions, and most of the
  140.     code for custom quantization tables.
  141.  
  142.     Jim Boucher of Boston University for jmovie2jpeg.
  143.